草庐IT

java - 数组元素的总和

全部标签

Javascript 数组?

这可能完全是愚蠢的,但考虑到我在我的浏览器控制台中输入了这个:vararr=[];arr.item='val';console.log(arr);arr;arr;语法在幕后做了什么?我假设console.log(arr);正在迭代arr对象的所有属性,但是arr;在做什么?[]是否也告诉我我正在处理一个数组类型的对象,而{}告诉我我正在处理一个对象文字类型的对象?所以[item:'val']是一个原型(prototype)为数组的对象,而{item:'val'}是原型(prototype)对象字面量的对象?编辑:另一种问这个问题的方式可能是为什么console.log和arr;不同?

javascript - 如何使用组件从 vuejs 返回一个普通数组?

我正在使用对我的数据库的调用来检索一些结果并将它们推送到一个数组中。但是,当我console.log(this.activeBeers)时,我没有得到一个数组,而是一个对象。我怎样才能取回普通数组而不是对象?Vue.component('beers',{template:'#beers-template',data:function(){return{activeBeers:[]}},ready:function(){functiongetActiveBeers(array,ajax){ajax.get('/getbeers/'+$('input#bar-id').val()).the

javascript - AngularJS:让元素跟随光标

jsfiddle在这里:https://jsfiddle.net/Flignats/jzrzo56u/3/我的页面上有一个最初隐藏的元素(弹出窗口)。当页面上的另一个元素悬停时,我希望弹出窗口显示在光标旁边。在我的fiddle中,我有3个段落和弹出框。当用户的光标进入段落​​时,将显示弹出框。当用户的光标离开该元素时,弹出窗口将不再显示。我在检索光标坐标和将弹出窗口定位在光标附近时遇到问题。感谢任何帮助:)Angular代码:varapp=angular.module('myApp',[]);app.controller('Ctrl',['$scope',function($scope

javascript - 对两个不同值的数组进行排序,保持原始配对

我有两个js数组,一个包含字符串,另一个包含颜色代码,例如:strings=['one','twooo','tres','four'];colors=['000000','ffffff','cccccc','333333'];我需要按值的长度对第一个数组进行排序,较长的在前。我知道我可以做类似的事情:strings.sort(function(a,b){returnb.length-a.length;});但是这样我就失去了分配给每个字符串的颜色。如何对两个数组进行排序以保持键配对? 最佳答案 公然复制自Sortingwithmap

javascript - 选择多个元素 height();

我只是想知道为什么这个jQuery不能工作:hdr=$('.header-wrapper,#top-bar,#new-showroom-header').height();如您所见,我正在尝试获取多个元素的高度并将它们全部存储在我的变量中。我希望jQuery将所有元素的高度加在一起以创建最终值,但是当我console.log变量hdr时,我得到了所选第一个元素的高度。知道如何全选并将它们存储到我的var中吗? 最佳答案 使用$.each()得到高度的总和。varhdr=0;$('.header-wrapper,#top-bar,#n

javascript - 在 ng-if 中设置监视元素

假设我有以下观点:在Controllersome中设置:foo.controller('fooFoo',functionfooFoo($scope){$scope.some="something";$scope.$watch('foo.Bar',function(nVal,oVal){etc...});});如果输入位于带有ng-if的div中,则watch不起作用。为什么?我能以某种方式让它发挥作用吗? 最佳答案 您必须在Controller中创建foo的空对象。foo.controller('fooFoo',functionfo

javascript - 使用javascript匹配字符串中数组的元素之一

我正在尝试创建一个函数,如果在另一个字符串中找到至少一个字符串数组的元素,该函数将返回true。functionfindInString(str){varfruits=["orange","banana","grape"];for(vari=0;i-1){returntrue;}}returnfalse;}vara=findInString("Iloveorangejuice.");//=>returnstruevarb=findInString("Idon'tlikepeach.");//=>returnsfalse这个函数可以解决问题,但我确信可能有一些数组或字符串方法可以执行相同

javascript - 随机数组生成的意外行为

这个问题在这里已经有了答案:Howtosortanarrayofintegerscorrectly(32个答案)Howtosortnumbers?[duplicate](4个答案)关闭6年前。我试图生成一个10到1000之间的随机数数组,按降序排列。这是我写的代码:functionGenerateRandomArray(){vararray=[];for(vari=0;i在终端中运行时,这是我得到的结果:newGenerateRandomArray()=>[924,804,79,788,585,451,267,217,153,135]newGenerateRandomArray()=>

javascript - Should.js:检查两个数组是否包含相同的字符串

我有两个数组:vara=['a','as','sa'];varb=['sa','a','as'];shouldJS有什么特别的东西可以测试这两个数组是否有相同的项目?什么都喜欢should(a).be.xyz(b)那可以测试它们吗?在这里,xyz是我正在寻找的。 最佳答案 一个简单但可能足够的解决方案是在比较数组之前对数组进行排序:should(a.sort()).be.eql(b.sort())请注意sort()worksin-place,改变原始数组。 关于javascript-Sh

javascript - forEach 在循环之前是否创建数组的深拷贝?

举个例子arr1=[{b:2},{a:1}]//anarraywith2elementsarr1.forEach(function(element,index,array){console.log(element);console.log('of');console.log(array);console.log('');arr1.push({c:3});});console.log(arr1);结果{b:2}of[{b:2},{a:1}]{a:1}of[{b:2},{a:1},{c:3}][{b:2},{a:1},{c:3},{c:3}]在上面的示例中,我正在遍历一个数组并向其添加更多